From 00c580c37833df3041e0f1669e659b7e40cea9f0 Mon Sep 17 00:00:00 2001 From: robertl Date: Tue, 13 Feb 2007 19:01:45 +0000 Subject: [PATCH] Start sketching in some incomplete D304 send support. git-svn-id: http://gpsbabel.googlecode.com/svn/trunk@2663 f51c46e8-681c-474f-0cfe-069cfd0219fb --- gpsbabel/jeeps/gpsapp.c | 34 ++++++++++++++++++++++++++++++++++ gpsbabel/jeeps/gpsapp.h | 1 + 2 files changed, 35 insertions(+) diff --git a/gpsbabel/jeeps/gpsapp.c b/gpsbabel/jeeps/gpsapp.c index 05aac8417..c9f14fded 100644 --- a/gpsbabel/jeeps/gpsapp.c +++ b/gpsbabel/jeeps/gpsapp.c @@ -3796,6 +3796,10 @@ int32 GPS_A301_Send(const char *port, GPS_PTrack *trk, int32 n) GPS_D301_Send(data,trk[i]); len = 21; break; + case pD304: + GPS_D304_Send(data,trk[i]); + len = 26; + break; default: GPS_Error("A301_Send: Unknown track protocol"); return PROTOCOL_ERROR; @@ -4195,6 +4199,36 @@ void GPS_D301_Send(UC *data, GPS_PTrack trk) return; } +void GPS_D304_Send(UC *data, GPS_PTrack trk) +{ + UC *p; + + p = data; + GPS_A300_Encode(p,trk); + p = data+12; + + GPS_Util_Put_Float(p,trk->alt); + p+=sizeof(float); + + GPS_Util_Put_Float(p,1.0e25); + p+=sizeof(float); + + /* Not really clear if the members below makes sense to write or not */ + + *p = trk->heartrate; + p+=sizeof(char); + + *p = trk->cadence; + p+=sizeof(char); + + *p = trk->cadence > 0 ? trk->cadence : 0xff; + p+=sizeof(char); + + *p = trk->tnew; + + return; +} + /* @func GPS_D310_Send ************************************************** diff --git a/gpsbabel/jeeps/gpsapp.h b/gpsbabel/jeeps/gpsapp.h index 2d9ead9c1..ee6416847 100644 --- a/gpsbabel/jeeps/gpsapp.h +++ b/gpsbabel/jeeps/gpsapp.h @@ -34,6 +34,7 @@ void GPS_D310_Get(GPS_PTrack *trk, UC *s); void GPS_D311_Get(GPS_PTrack *trk, UC *s); void GPS_D300_Send(UC *data, GPS_PTrack trk); void GPS_D301_Send(UC *data, GPS_PTrack trk); +void GPS_D304_Send(UC *data, GPS_PTrack trk); void GPS_D310_Send(UC *data, GPS_PTrack trk, int32 *len); int32 GPS_A400_Get(const char *port, GPS_PWay **way); -- 2.30.2